(function() {

    // 抽象类 动物类
    /**
     * 抽象类语法：在类的前面使用abstract关键字
     * 作用：和基本的类差不多，只是不能创建对象，只能用来给其他类继承。有时候我们并不希望该类能够创建对象，只是用来继承，那么此时就可以使用抽象类。
     * 可以添加抽象方法
     */
   abstract class Animal{

    // 抽象方法
        abstract sayHellow(data:any):any;
    }

    // 狗类
    class Dog  extends Animal{

        // 实现抽象方法
        sayHellow(data:any){
            console.log(`抽象方法：${data}`)
        }
    }

    const dog1 = new Dog()
    dog1.sayHellow("二狗子")
})()